DataSource for Entity Framework for WinForms
Add(LambdaExpression,Boolean,Boolean,IndexingAlgorithm,CultureInfo) メソッド

C1.LiveLinq.4.5.2 アセンブリ > C1.LiveLinq.Indexing 名前空間 > ScannerCollection<T> クラス > Add メソッド : Add(LambdaExpression,Boolean,Boolean,IndexingAlgorithm,CultureInfo) メソッド
インデックスのキーセレクタ式。KeySelector を参照してください。
このインデックスで使用されているキーがインデックス付きのコレクションに対する一意のキーかどうかを指定します(デフォルトは false)。
このメソッドの呼び出し前にインデックスが存在してはならないかどうかを指定します。 この keySelector を持つインデックスが既に存在する場合、true の場合は例外が生成され、 false の場合、このメソッドの呼び出しは無視されます。
インデックスによって使用される IndexingAlgorithm。現在のバージョンでは、サポートされている唯一のアルゴリズムは赤黒木です。 今後のバージョンでは、ビットマップやハッシュインデックスなどのその他のアルゴリズムがサポートされる可能性もあります。
インデックス内の文字列を比較するために使用するロケール情報(デフォルトは CultureInfo.CurrentCulture)。
新しいインデックスを作成し、それをインデックスのコレクションに追加します。
シンタックス
'宣言
 
Public Overloads Function Add( _
   ByVal keySelector As System.Linq.Expressions.LambdaExpression, _
   ByVal keyIsUnique As System.Boolean, _
   ByVal onlyOnce As System.Boolean, _
   ByVal algorithm As IndexingAlgorithm, _
   ByVal locale As System.Globalization.CultureInfo _
) As IIndexScanner(Of T)
public IIndexScanner<T> Add( 
   System.Linq.Expressions.LambdaExpression keySelector,
   System.bool keyIsUnique,
   System.bool onlyOnce,
   IndexingAlgorithm algorithm,
   System.Globalization.CultureInfo locale
)

パラメータ

keySelector
インデックスのキーセレクタ式。KeySelector を参照してください。
keyIsUnique
このインデックスで使用されているキーがインデックス付きのコレクションに対する一意のキーかどうかを指定します(デフォルトは false)。
onlyOnce
このメソッドの呼び出し前にインデックスが存在してはならないかどうかを指定します。 この keySelector を持つインデックスが既に存在する場合、true の場合は例外が生成され、 false の場合、このメソッドの呼び出しは無視されます。
algorithm
インデックスによって使用される IndexingAlgorithm。現在のバージョンでは、サポートされている唯一のアルゴリズムは赤黒木です。 今後のバージョンでは、ビットマップやハッシュインデックスなどのその他のアルゴリズムがサポートされる可能性もあります。
locale
インデックス内の文字列を比較するために使用するロケール情報(デフォルトは CultureInfo.CurrentCulture)。

戻り値の型

新しいインデックスは、インデックスのコレクションに追加されます。
解説

一意のインデックスは、一意でないインデックスと比較して、メモリ占有量が少なく、パフォーマンスが向上します(ただし劇的な差はありません)。 そのため、一意のキーでは、対応するインデックスを一意に指定することをお勧めします。

ただし、インデックス付きのコレクションには一意性の制約の制限があるので、キーが実際に一意であることを確認してください。 一意性に違反しているインデックス付きのコレクションを変更しようとすると、System.InvalidOperationException が生成されます。

参照

ScannerCollection<T> クラス
ScannerCollection<T> メンバ
オーバーロード一覧